package com.haiqiu.system.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * sys_role
 * @author haiqiu
 */
@ApiModel(value="系统角色")
@Data
public class SysRole implements Serializable {
    /**
     * 主键ID
     */
    @ApiModelProperty(value="主键ID")
    private Long id;

    /**
     * 角色名称
     */
    @ApiModelProperty(value="角色名称")
    @NotEmpty(message = "角色名称不能为空")
    private String name;

    /**
     * 标识符
     */
    @ApiModelProperty(value="标识符")
    @NotEmpty(message = "角色标识符不能为空")
    private String sign;

    /**
     * 角色描述
     */
    @ApiModelProperty(value="角色描述")
    @NotEmpty(message = "角色描述不能为空")
    private String desc;

    /**
     * 角色图标
     */
    @ApiModelProperty(value="角色图标")
    private String icon;

    /**
     * 是否开启（true激活，false禁用）
     */
    @ApiModelProperty(value="是否开启（true激活，false禁用）")
    @NotNull(message = "激活状态不能为空")
    private Boolean active;

    /**
     * 排序
     */
    @ApiModelProperty(value="排序")
    @NotNull(message = "角色排序不能为空")
    private Short sort;

    /**
     * 逻辑删除（false未删除，true已删除）
     */
    @ApiModelProperty(value="逻辑删除（false未删除，true已删除）")
    private Boolean del;

    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间",hidden = true)
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty(value="修改时间",hidden = true)
    private Date updateTime;

    private static final long serialVersionUID = 1L;
}